package ${config.packageName}${module}<#noparse>.</#noparse>${config.serviceApi.packageName};

import java.util.List;

import com.falcon.mvc.domain.BasePager;

import ${config.packageName}${module}<#noparse>.</#noparse>${config.dto.packageName}<#noparse>.</#noparse>${config.dto.namePrefix!''}${table.className}${config.dto.nameSuffix!''};
import ${config.packageName}${module}<#noparse>.</#noparse>${config.request.packageName}<#noparse>.</#noparse>${config.query.namePrefix!''}${table.className}${config.query.nameSuffix!''};
import ${config.packageName}${module}<#noparse>.</#noparse>${config.query.packageName}<#noparse>.</#noparse>${config.request.namePrefix!''}${table.className}${config.request.nameSuffix!''};

public interface ${config.serviceApi.namePrefix!''}${table.className}${config.serviceApi.nameSuffix!''} {

    Long save(${config.request.namePrefix!''}${table.className}${config.request.nameSuffix!''} request);

    Boolean update(Long id, ${config.request.namePrefix!''}${table.className}${config.request.nameSuffix!''} request);

    Boolean deleteById(Long id);

    ${config.dto.namePrefix!''}${table.className}${config.dto.nameSuffix!''} queryById(Long id);

    List<${config.dto.namePrefix!''}${table.className}${config.dto.nameSuffix!''}> queryList(${config.query.namePrefix!''}${table.className}${config.query.nameSuffix!''} request);

    BasePager<${config.dto.namePrefix!''}${table.className}${config.dto.nameSuffix!''}> queryPager(${config.query.namePrefix!''}${table.className}${config.query.nameSuffix!''} request);

    int batchDelete(List<Long> ids);

}
